<HTML>
<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
</CENTER>






<HR>

<H3>fix viscous command 
</H3>
<H3>fix viscous/cuda command 
</H3>
<P><B>Syntax:</B>
</P>
<PRE>fix ID group-ID viscous gamma keyword values ... 
</PRE>
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command 

<LI>viscous = style name of this fix command 

<LI>gamma = damping coefficient (force/velocity units) 

<LI>zero or more keyword/value pairs may be appended 

<PRE>keyword = <I>scale</I>
  <I>scale</I> values = type ratio
    type = atom type (1-N)
    ratio = factor to scale the damping coefficient by 
</PRE>

</UL>
<P><B>Examples:</B>
</P>
<PRE>fix 1 flow viscous 0.1
fix 1 damp viscous 0.5 scale 3 2.5 
</PRE>
<P><B>Description:</B>
</P>
<P>Add a viscous damping force to atoms in the group that is proportional
to the velocity of the atom.  The added force can be thought of as a
frictional interaction with implicit solvent, i.e. the no-slip Stokes
drag on a spherical particle.  In granular simulations this can be
useful for draining the kinetic energy from the system in a controlled
fashion.  If used without additional thermostatting (to add kinetic
energy to the system), it has the effect of slowly (or rapidly)
freezing the system; hence it can also be used as a simple energy
minimization technique.
</P>
<P>The damping force F is given by F = - gamma * velocity.  The larger
the coefficient, the faster the kinetic energy is reduced.  If the
optional keyword <I>scale</I> is used, gamma can scaled up or down by the
specified factor for atoms of that type.  It can be used multiple
times to adjust gamma for several atom types.
</P>
<P>IMPORTANT NOTE: You should specify gamma in force/velocity units.
This is not the same as mass/time units, at least for some of the
LAMMPS <A HREF = "units.html">units</A> options like "real" or "metal" that are not
self-consistent.
</P>
<P>In a Brownian dynamics context, gamma = Kb T / D, where Kb =
Boltzmann's constant, T = temperature, and D = particle diffusion
coefficient.  D can be written as Kb T / (3 pi eta d), where eta =
dynamic viscosity of the frictional fluid and d = diameter of
particle.  This means gamma = 3 pi eta d, and thus is proportional to
the viscosity of the fluid and the particle diameter.
</P>
<P>In the current implementation, rather than have the user specify a
viscosity, gamma is specified directly in force/velocity units.  If
needed, gamma can be adjusted for atoms of different sizes
(i.e. sigma) by using the <I>scale</I> keyword.
</P>
<P>Note that Brownian dynamics models also typically include a randomized
force term to thermostat the system at a chosen temperature.  The <A HREF = "fix_langevin.html">fix
langevin</A> command does this.  It has the same
viscous damping term as fix viscous and adds a random force to each
atom.  Hence if using fix <I>langevin</I> you do not typically need to use
fix <I>viscous</I>.  Also note that the gamma of fix viscous is related to
the damping parameter of <A HREF = "fix_langevin.html">fix langevin</A>, except that
the units of gamma are force/velocity and the units of damp are time,
so that it can more easily be used as a thermostat.
</P>
<HR>

<P>Styles with a <I>cuda</I> suffix are functionally the same as the
corresponding style without the suffix.  They have been optimized to
run faster, depending on your available hardware, as discussed in
<A HREF = "Section_accelerate.html">Section_accelerate</A> of the manual.  The
accelerated styles take the same arguments and should produce the same
results, except for round-off and precision issues.
</P>
<P>These accelerated styles are part of the USER-CUDA package.  They are
only enabled if LAMMPS was built with that package.  See the <A HREF = "Section_start.html#start_3">Making
LAMMPS</A> section for more info.
</P>
<P>You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the <A HREF = "Section_start.html#start_7">-suffix command-line
switch</A> when you invoke LAMMPS, or you can
use the <A HREF = "suffix.html">suffix</A> command in your input script.
</P>
<P>See <A HREF = "Section_accelerate.html">Section_accelerate</A> of the manual for
more instructions on how to use the accelerated styles effectively.
</P>
<HR>

<P><B>Restart, fix_modify, output, run start/stop, minimize info:</B>
</P>
<P>No information about this fix is written to <A HREF = "restart.html">binary restart
files</A>.  None of the <A HREF = "fix_modify.html">fix_modify</A> options
are relevant to this fix.  No global or per-atom quantities are stored
by this fix for access by various <A HREF = "Section_howto.html#howto_15">output
commands</A>.  No parameter of this fix can
be used with the <I>start/stop</I> keywords of the <A HREF = "run.html">run</A> command.
</P>
<P>The forces due to this fix are imposed during an energy minimization,
invoked by the <A HREF = "minimize.html">minimize</A> command.  This fix should only
be used with damped dynamics minimizers that allow for
non-conservative forces.  See the <A HREF = "min_style.html">min_style</A> command
for details.
</P>
<P><B>Restrictions:</B> none
</P>
<P><B>Related commands:</B>
</P>
<P><A HREF = "fix_langevin.html">fix langevin</A>
</P>
<P><B>Default:</B> none
</P>
</HTML>
